#pragma once

/*--------------------------------------------------------------------------*/
#include <iostream>
#include <fstream>
#include <sstream>
#include <stddef.h>
#include <map>

/*--OpenGL------------------------------------------------------------------*/
#include "GL/glew.h"
#pragma comment(lib, "glew32.lib")
#pragma comment(lib, "opengl32.lib")

/*--SDL2--------------------------------------------------------------------*/
#include "sdl/SDL.h"
#undef main

#pragma comment(lib, "SDL2.lib")
#pragma comment(lib, "SDL2main.lib")

/*--GLM---------------------------------------------------------------------*/
#include "glm/glm.hpp"
#include "glm/ext.hpp"
#include "GLMHelper.h"

/*--SOIL--------------------------------------------------------------------*/
#include "SOIL/SOIL.h"

#ifdef _DEBUG
#pragma comment(lib, "SOIL_d.lib")
#else
#pragma comment(lib, "SOIL_r.lib")
#endif

/*--------------------------------------------------------------------------*/

#include "IResource.h"
#include "IManager.h"

#include "Texture.h"
#include "TexManager.h"

#include "Mesh.h"
#include "MeshManager.h"

#include "GLSLProgram.h"

#include "Material.h"

#include "Vertex.h"
#include "VertexBuffer.h"
#include "VertexArray.h"
#include "Input.h"
#include "Game.h"